export default{
  //开启命名空间
  namespaced:true,
  
  //数据
  state:() =>({
    //JSON.parse() 方法将数据转换为 JavaScript 对象。
    address:JSON.parse(uni.getStorageSync('address') || '{}'),
    //登录成功之后的token字符串
    token:uni.getStorageSync('token') || '',
    //用户信息
    userinfo:JSON.parse(uni.getStorageSync('userinfo') || '{}'),
    //重定向的object对象 {openType,from}
    redirectInfo:null
  }),
  
  //方法
  mutations:{
    //更新收货地址
    updateAddress(state,address){
      state.address = address
      this.commit('m_user/saveToStorage')
    },
    saveToStorage(state){
      uni.setStorageSync('address',JSON.stringify(state.address))
    },
    updateUserInfo(state,userinfo){
      state.userinfo = userinfo
      this.commit('m_user/saveUserInfoToStorage')
    },
    saveUserInfoToStorage(state){
      uni.setStorageSync('userinfo',JSON.stringify(state.userinfo))
    },
    saveTokenToStorage(state){
      uni.setStorageSync('token',state.token)
    },
    updateToken(state,token){
      state.token = token
      this.commit('m_user/saveTokenToStorage')
    },
    updateRedirectInfo(state,info){
      state.redirectInfo = info
    }
  },
  
  getters:{
    addrStr(state){
      if(!state.address.provinceName)  return ''
      return state.address.cityName + state.address.countyName + state.address.detailInfo
    }
  }
}